home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / cgazv5n5.arc / LIST3.C < prev    next >
C/C++ Source or Header  |  1991-09-23  |  664b  |  26 lines

  1. /*---------------------------------------- Listing 3 ------
  2.  * Demonstration of the SIGFPE signal.
  3.  * See Listing 1 for copyright terms.
  4.  *-------------------------------------------------------*/
  5. #include <stdio.h>
  6. #include <signal.h>
  7.  
  8. void FpeHandler ( int Signal, int SubCode );
  9. void main ( void );
  10.  
  11. void FpeHandler ( int Signal, int SubCode )
  12. {
  13.     printf( "Signal %d, SubCode %d was raised\n", 
  14.              Signal, SubCode );
  15. }
  16.  
  17. void main ( void )
  18. {
  19.     void (*OldHandler) ( int Signal );
  20.  
  21.     OldHandler = signal ( SIGFPE, FpeHandler );
  22.     if ( OldHandler == SIG_ERR )
  23.         printf ( "signal failed\n" );
  24.  
  25.     raise ( SIGFPE );
  26. }